The approaches described in this section could be pursued, but are not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
With the growth in number of features that are available for monitoring and configuring computer systems, user interfaces of system management consoles face significant challenges in presenting these multitude of features to a user. The challenge is further exacerbated with shrinking display sizes of the user devices. Increasingly users prefer using their handheld devices to monitor and configure managed computer systems, user interfaces need to adapt to present meaningful information on constrained display spaces. User interfaces that simply clutter the interfaces with numerous menus, sub-menus, sub-sub-menus and so force, each with its own options, sub-options, sub-sub-options and so forth inadvertently complicate the user's navigation through the interface. Navigating such a user interface to locate a particular feature of interest may frustrate the user resulting in a severely degraded user experience.
In addition to the growth of features, systems management consoles are also confronted with the complex task of presenting an overarching view of the computer system's state. Traditionally, the computer system's overview has been confined to the rollups of health statuses through components and sub-components all the way up-to the health status of the system. A failure at a lower level component, for example a failure of a storage disk in a storage array, is propagated to the next level of the storage array and then, to the next level of the storage subsystem and perhaps, even up to the overall system health status.
Although, such health status roll-ups may present an overview of the system's health, the roll-up is useful for insular failures of components and fails to be descriptive for inter-related failures. For example, if many components, such as CPU, memory and network, have failures, a user of a systems management console may have difficulty in assessing the root cause of the failures. In fact, what may have led to these failures may have been a wrong configuration of a feature within a router that caused excessive consumption of the router's memory and CPU, which in turn caused an increased rate of dropped packets. It would be impossible for the user to ascertain the root cause of the problem just from a warning health state of the router or a failure/critical failure health state of the CPU, memory and network. The user would have to navigate one-by-one through many widgets of the user interface to find any components exhibiting a problem, and deduce how those components might correlate and contribute to the overall system failure.